package com.example.demo.service;

import cn.hutool.core.lang.Dict;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.demo.dto.MenuPageParam;
import com.example.demo.dto.MenuParam;
import com.example.demo.entity.Menu;
import com.example.demo.vo.MenuVO;

import java.util.List;

/**
 * <p>
 * 系统管理-菜单权限表 服务类
 * </p>
 *
 * @author vicente
 * @since 2024-01-24
 */
public interface MenuService extends IService<Menu> {

    /**
     * 添加菜单
     * @param param
     * @return
     */
    boolean save(MenuParam param);

    /**
     * 更新菜单
     * @param param
     * @return
     */
    boolean update(MenuParam param);

    /**
     * 应用列表
     * @return
     */
    List<Dict> appList();

    /**
     * 获取菜单树
     * @param param
     * @return
     */
    List<MenuVO> tree(MenuPageParam param);

}
